package com.patsnap.data.npd.dw.schema.ods.journal;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.patsnap.data.npd.dw.schema.base.BaseNonePatentDto;
import com.patsnap.one.etl.table.meta.annotation.AsSourceTableMeta;
import com.patsnap.one.etl.table.meta.annotation.AsTargetTableMeta;
import com.patsnap.one.etl.table.meta.annotation.FieldMeta;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.SuperBuilder;

import java.sql.JDBCType;

@Data
@SuperBuilder
@AllArgsConstructor
@NoArgsConstructor
@AsSourceTableMeta(tableName = "ods_journal_jbest_info", partitionFields = {"jbest_id"})
@AsTargetTableMeta(tableName = "ods_journal_jbest_info", primaryKeys = {"jbest_id"})
@TableName(value = "ods_journal_jbest_info", autoResultMap = true)
public class OdsJournalJBestInfo extends BaseNonePatentDto {

    @FieldMeta(fieldName = "jbest_id", jdbcType = JDBCType.VARCHAR, comment = "主键，期刊id")
    @TableField(value = "jbest_id")
    private String jBestId;

    @FieldMeta(fieldName = "journal_name", jdbcType = JDBCType.VARCHAR, comment = "刊名")
    private String journalName;

    @FieldMeta(fieldName = "organizer", jdbcType = JDBCType.VARCHAR, comment = "主办单位")
    private String organizer;

    @FieldMeta(fieldName = "cn", jdbcType = JDBCType.VARCHAR, comment = "国内统一刊号")
    private String cn;

    @FieldMeta(fieldName = "issn", jdbcType = JDBCType.VARCHAR, comment = "国际统一刊号")
    private String issn;

    @FieldMeta(fieldName = "category", jdbcType = JDBCType.VARCHAR, comment = "学科")
    private String category;

    @FieldMeta(fieldName = "in_ei", jdbcType = JDBCType.VARCHAR, comment = "EI收录")
    private String inEi;

    @FieldMeta(fieldName = "in_medline", jdbcType = JDBCType.VARCHAR, comment = "Medline收录")
    private String inMedline;

    @FieldMeta(fieldName = "in_sci", jdbcType = JDBCType.VARCHAR, comment = "SCI收录")
    private String inSci;

    @FieldMeta(fieldName = "in_cscd", jdbcType = JDBCType.VARCHAR, comment = "CSCD收录")
    private String inCscd;

    @FieldMeta(fieldName = "in_istic", jdbcType = JDBCType.VARCHAR, comment = "中信所收录")
    private String inIstic;

    @FieldMeta(fieldName = "jcr", jdbcType = JDBCType.VARCHAR, comment = "JCR分区")
    private String jcr;

    @FieldMeta(fieldName = "publication_type", jdbcType = JDBCType.VARCHAR, comment = "出版物类型")
    private String publicationType;

    @FieldMeta(fieldName = "publisher", jdbcType = JDBCType.VARCHAR, comment = "出版社")
    private String publisher;

    @FieldMeta(fieldName = "country", jdbcType = JDBCType.VARCHAR, comment = "国家")
    private String country;

    @FieldMeta(fieldName = "lang", jdbcType = JDBCType.VARCHAR, comment = "语言")
    private String lang;

    @FieldMeta(fieldName = "content_type", jdbcType = JDBCType.VARCHAR, comment = "内容类型")
    private String contentType;

    @FieldMeta(fieldName = "issue", jdbcType = JDBCType.VARCHAR, comment = "刊期")
    private String issue;

    @FieldMeta(fieldName = "lang_content", jdbcType = JDBCType.VARCHAR, comment = "文种")
    private String langContent;

    @FieldMeta(fieldName = "primary_organizer", jdbcType = JDBCType.VARCHAR, comment = "第一主办单位")
    private String primaryOrganizer;

    @FieldMeta(fieldName = "supervising_agency", jdbcType = JDBCType.VARCHAR, comment = "主管机关（总局）")
    private String supervisingAgency;

    @FieldMeta(fieldName = "journal_url", jdbcType = JDBCType.VARCHAR, comment = "网址")
    private String journalUrl;

    @FieldMeta(fieldName = "tel", jdbcType = JDBCType.VARCHAR, comment = "联系电话")
    private String tel;

    @FieldMeta(fieldName = "publication_address", jdbcType = JDBCType.VARCHAR, comment = "出版地址")
    private String publicationAddress;

    @FieldMeta(fieldName = "province_city", jdbcType = JDBCType.VARCHAR, comment = "省市")
    private String provinceCity;

    @FieldMeta(fieldName = "postal_code", jdbcType = JDBCType.VARCHAR, comment = "邮政编码")
    private String postalCode;

    @FieldMeta(fieldName = "ranking_result", jdbcType = JDBCType.VARCHAR, comment = "分级结果")
    private String rankingResult;

    @FieldMeta(fieldName = "source_url", jdbcType = JDBCType.VARCHAR, comment = "获取网页的url")
    private String sourceUrl;
}
